The importance of data has increased during the last decade while the cost of data storage medium has decreased, thus motivating data storage vendors to provide data protection schemes that are based upon duplication of data.
One of these protection schemes is known as remote mirroring. Remote mirroring involves repetitively generating one or more duplicates on a remote secondary site. Remote mirroring is mainly used for disaster recovery.
Remote mirroring does not guarantee that the secondary site is fully synchronized (consistent) with the primary (production) site at all times. A data set is consistent if it does not reflect any operation that depends on another operation that is not reflected in the data set.
In case of a disaster at the primary site, it is crucial to know whether the secondary site is fully synchronized and allows continuation of normal operation.
In cases where the primary and secondary site run compatible firmware, the primary site controller uses a special proprietary “update secondary” command to update the secondary site controller as to its status with respect to full synchronization.
In many cases the secondary site includes a secondary site controller that is not compatible with the primary site controller. This can occur due to cost constrains (for example—using a cheaper secondary site controller) but this is not necessarily so. In these situations the status of the secondary site can not be updated by sending a special proprietary “update secondary” command from the primary site controller to the secondary site controller.
There is a need to enable a control entity to know whether a secondary site is consistent even when the secondary site controller is not compliant with the primary site controller.